/**
 * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
 *
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Lesser General Public License as published by the Free
 * Software Foundation; either version 2.1 of the License, or (at your option)
 * any later version.
 *
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 */

package com.mto.module.karaoke.service.persistence;

import com.liferay.portal.kernel.bean.PortletBeanLocatorUtil;
import com.liferay.portal.kernel.dao.orm.DynamicQuery;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.util.OrderByComparator;
import com.liferay.portal.kernel.util.ReferenceRegistry;
import com.liferay.portal.service.ServiceContext;

import com.mto.module.karaoke.model.Song;

import java.util.List;

/**
 * The persistence utility for the song service. This utility wraps {@link SongPersistenceImpl} and provides direct access to the database for CRUD operations. This utility should only be used by the service layer, as it must operate within a transaction. Never access this utility in a JSP, controller, model, or other front-end class.
 *
 * <p>
 * Caching information and settings can be found in <code>portal.properties</code>
 * </p>
 *
 * @author vuonglm
 * @see SongPersistence
 * @see SongPersistenceImpl
 * @generated
 */
public class SongUtil {
	/*
	 * NOTE FOR DEVELOPERS:
	 *
	 * Never modify this class directly. Modify <code>service.xml</code> and rerun ServiceBuilder to regenerate this class.
	 */

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#clearCache()
	 */
	public static void clearCache() {
		getPersistence().clearCache();
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#clearCache(com.liferay.portal.model.BaseModel)
	 */
	public static void clearCache(Song song) {
		getPersistence().clearCache(song);
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#countWithDynamicQuery(DynamicQuery)
	 */
	public long countWithDynamicQuery(DynamicQuery dynamicQuery)
		throws SystemException {
		return getPersistence().countWithDynamicQuery(dynamicQuery);
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#findWithDynamicQuery(DynamicQuery)
	 */
	public static List<Song> findWithDynamicQuery(DynamicQuery dynamicQuery)
		throws SystemException {
		return getPersistence().findWithDynamicQuery(dynamicQuery);
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#findWithDynamicQuery(DynamicQuery, int, int)
	 */
	public static List<Song> findWithDynamicQuery(DynamicQuery dynamicQuery,
		int start, int end) throws SystemException {
		return getPersistence().findWithDynamicQuery(dynamicQuery, start, end);
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#findWithDynamicQuery(DynamicQuery, int, int, OrderByComparator)
	 */
	public static List<Song> findWithDynamicQuery(DynamicQuery dynamicQuery,
		int start, int end, OrderByComparator orderByComparator)
		throws SystemException {
		return getPersistence()
				   .findWithDynamicQuery(dynamicQuery, start, end,
			orderByComparator);
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#update(com.liferay.portal.model.BaseModel, boolean)
	 */
	public static Song update(Song song, boolean merge)
		throws SystemException {
		return getPersistence().update(song, merge);
	}

	/**
	 * @see com.liferay.portal.service.persistence.BasePersistence#update(com.liferay.portal.model.BaseModel, boolean, ServiceContext)
	 */
	public static Song update(Song song, boolean merge,
		ServiceContext serviceContext) throws SystemException {
		return getPersistence().update(song, merge, serviceContext);
	}

	/**
	* Caches the song in the entity cache if it is enabled.
	*
	* @param song the song
	*/
	public static void cacheResult(com.mto.module.karaoke.model.Song song) {
		getPersistence().cacheResult(song);
	}

	/**
	* Caches the songs in the entity cache if it is enabled.
	*
	* @param songs the songs
	*/
	public static void cacheResult(
		java.util.List<com.mto.module.karaoke.model.Song> songs) {
		getPersistence().cacheResult(songs);
	}

	/**
	* Creates a new song with the primary key. Does not add the song to the database.
	*
	* @param songId the primary key for the new song
	* @return the new song
	*/
	public static com.mto.module.karaoke.model.Song create(long songId) {
		return getPersistence().create(songId);
	}

	/**
	* Removes the song with the primary key from the database. Also notifies the appropriate model listeners.
	*
	* @param songId the primary key of the song
	* @return the song that was removed
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song remove(long songId)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence().remove(songId);
	}

	public static com.mto.module.karaoke.model.Song updateImpl(
		com.mto.module.karaoke.model.Song song, boolean merge)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().updateImpl(song, merge);
	}

	/**
	* Returns the song with the primary key or throws a {@link com.mto.module.karaoke.NoSuchSongException} if it could not be found.
	*
	* @param songId the primary key of the song
	* @return the song
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findByPrimaryKey(
		long songId)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence().findByPrimaryKey(songId);
	}

	/**
	* Returns the song with the primary key or returns <code>null</code> if it could not be found.
	*
	* @param songId the primary key of the song
	* @return the song, or <code>null</code> if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchByPrimaryKey(
		long songId) throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().fetchByPrimaryKey(songId);
	}

	/**
	* Returns all the songs where songName = &#63;.
	*
	* @param songName the song name
	* @return the matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongName(
		java.lang.String songName)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongName(songName);
	}

	/**
	* Returns a range of all the songs where songName = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songName the song name
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @return the range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongName(
		java.lang.String songName, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongName(songName, start, end);
	}

	/**
	* Returns an ordered range of all the songs where songName = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songName the song name
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
	* @return the ordered range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongName(
		java.lang.String songName, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .findBySongName(songName, start, end, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songName = &#63;.
	*
	* @param songName the song name
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongName_First(
		java.lang.String songName,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence().findBySongName_First(songName, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songName = &#63;.
	*
	* @param songName the song name
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongName_First(
		java.lang.String songName,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongName_First(songName, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songName = &#63;.
	*
	* @param songName the song name
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongName_Last(
		java.lang.String songName,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence().findBySongName_Last(songName, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songName = &#63;.
	*
	* @param songName the song name
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongName_Last(
		java.lang.String songName,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().fetchBySongName_Last(songName, orderByComparator);
	}

	/**
	* Returns the songs before and after the current song in the ordered set where songName = &#63;.
	*
	* @param songId the primary key of the current song
	* @param songName the song name
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the previous, current, and next song
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song[] findBySongName_PrevAndNext(
		long songId, java.lang.String songName,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongName_PrevAndNext(songId, songName,
			orderByComparator);
	}

	/**
	* Returns all the songs where songAuthor = &#63;.
	*
	* @param songAuthor the song author
	* @return the matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongAuthor(
		java.lang.String songAuthor)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongAuthor(songAuthor);
	}

	/**
	* Returns a range of all the songs where songAuthor = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songAuthor the song author
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @return the range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongAuthor(
		java.lang.String songAuthor, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongAuthor(songAuthor, start, end);
	}

	/**
	* Returns an ordered range of all the songs where songAuthor = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songAuthor the song author
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
	* @return the ordered range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongAuthor(
		java.lang.String songAuthor, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .findBySongAuthor(songAuthor, start, end, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songAuthor = &#63;.
	*
	* @param songAuthor the song author
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongAuthor_First(
		java.lang.String songAuthor,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongAuthor_First(songAuthor, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songAuthor = &#63;.
	*
	* @param songAuthor the song author
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongAuthor_First(
		java.lang.String songAuthor,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongAuthor_First(songAuthor, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songAuthor = &#63;.
	*
	* @param songAuthor the song author
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongAuthor_Last(
		java.lang.String songAuthor,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongAuthor_Last(songAuthor, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songAuthor = &#63;.
	*
	* @param songAuthor the song author
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongAuthor_Last(
		java.lang.String songAuthor,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongAuthor_Last(songAuthor, orderByComparator);
	}

	/**
	* Returns the songs before and after the current song in the ordered set where songAuthor = &#63;.
	*
	* @param songId the primary key of the current song
	* @param songAuthor the song author
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the previous, current, and next song
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song[] findBySongAuthor_PrevAndNext(
		long songId, java.lang.String songAuthor,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongAuthor_PrevAndNext(songId, songAuthor,
			orderByComparator);
	}

	/**
	* Returns all the songs where songCategory = &#63;.
	*
	* @param songCategory the song category
	* @return the matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongCategory(
		int songCategory)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongCategory(songCategory);
	}

	/**
	* Returns a range of all the songs where songCategory = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songCategory the song category
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @return the range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongCategory(
		int songCategory, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongCategory(songCategory, start, end);
	}

	/**
	* Returns an ordered range of all the songs where songCategory = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songCategory the song category
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
	* @return the ordered range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongCategory(
		int songCategory, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .findBySongCategory(songCategory, start, end,
			orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songCategory = &#63;.
	*
	* @param songCategory the song category
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongCategory_First(
		int songCategory,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongCategory_First(songCategory, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songCategory = &#63;.
	*
	* @param songCategory the song category
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongCategory_First(
		int songCategory,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongCategory_First(songCategory, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songCategory = &#63;.
	*
	* @param songCategory the song category
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongCategory_Last(
		int songCategory,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongCategory_Last(songCategory, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songCategory = &#63;.
	*
	* @param songCategory the song category
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongCategory_Last(
		int songCategory,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongCategory_Last(songCategory, orderByComparator);
	}

	/**
	* Returns the songs before and after the current song in the ordered set where songCategory = &#63;.
	*
	* @param songId the primary key of the current song
	* @param songCategory the song category
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the previous, current, and next song
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song[] findBySongCategory_PrevAndNext(
		long songId, int songCategory,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongCategory_PrevAndNext(songId, songCategory,
			orderByComparator);
	}

	/**
	* Returns all the songs where songSinger = &#63;.
	*
	* @param songSinger the song singer
	* @return the matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongSinger(
		java.lang.String songSinger)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongSinger(songSinger);
	}

	/**
	* Returns a range of all the songs where songSinger = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songSinger the song singer
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @return the range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongSinger(
		java.lang.String songSinger, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findBySongSinger(songSinger, start, end);
	}

	/**
	* Returns an ordered range of all the songs where songSinger = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param songSinger the song singer
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
	* @return the ordered range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findBySongSinger(
		java.lang.String songSinger, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .findBySongSinger(songSinger, start, end, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songSinger = &#63;.
	*
	* @param songSinger the song singer
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongSinger_First(
		java.lang.String songSinger,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongSinger_First(songSinger, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where songSinger = &#63;.
	*
	* @param songSinger the song singer
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongSinger_First(
		java.lang.String songSinger,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongSinger_First(songSinger, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songSinger = &#63;.
	*
	* @param songSinger the song singer
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findBySongSinger_Last(
		java.lang.String songSinger,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongSinger_Last(songSinger, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where songSinger = &#63;.
	*
	* @param songSinger the song singer
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchBySongSinger_Last(
		java.lang.String songSinger,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchBySongSinger_Last(songSinger, orderByComparator);
	}

	/**
	* Returns the songs before and after the current song in the ordered set where songSinger = &#63;.
	*
	* @param songId the primary key of the current song
	* @param songSinger the song singer
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the previous, current, and next song
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song[] findBySongSinger_PrevAndNext(
		long songId, java.lang.String songSinger,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findBySongSinger_PrevAndNext(songId, songSinger,
			orderByComparator);
	}

	/**
	* Returns all the songs where recordNumber = &#63;.
	*
	* @param recordNumber the record number
	* @return the matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findByRecordNumber(
		long recordNumber)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findByRecordNumber(recordNumber);
	}

	/**
	* Returns a range of all the songs where recordNumber = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param recordNumber the record number
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @return the range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findByRecordNumber(
		long recordNumber, int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findByRecordNumber(recordNumber, start, end);
	}

	/**
	* Returns an ordered range of all the songs where recordNumber = &#63;.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param recordNumber the record number
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
	* @return the ordered range of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findByRecordNumber(
		long recordNumber, int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .findByRecordNumber(recordNumber, start, end,
			orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where recordNumber = &#63;.
	*
	* @param recordNumber the record number
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findByRecordNumber_First(
		long recordNumber,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findByRecordNumber_First(recordNumber, orderByComparator);
	}

	/**
	* Returns the first song in the ordered set where recordNumber = &#63;.
	*
	* @param recordNumber the record number
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the first matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchByRecordNumber_First(
		long recordNumber,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchByRecordNumber_First(recordNumber, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where recordNumber = &#63;.
	*
	* @param recordNumber the record number
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song
	* @throws com.mto.module.karaoke.NoSuchSongException if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song findByRecordNumber_Last(
		long recordNumber,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findByRecordNumber_Last(recordNumber, orderByComparator);
	}

	/**
	* Returns the last song in the ordered set where recordNumber = &#63;.
	*
	* @param recordNumber the record number
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the last matching song, or <code>null</code> if a matching song could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song fetchByRecordNumber_Last(
		long recordNumber,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence()
				   .fetchByRecordNumber_Last(recordNumber, orderByComparator);
	}

	/**
	* Returns the songs before and after the current song in the ordered set where recordNumber = &#63;.
	*
	* @param songId the primary key of the current song
	* @param recordNumber the record number
	* @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
	* @return the previous, current, and next song
	* @throws com.mto.module.karaoke.NoSuchSongException if a song with the primary key could not be found
	* @throws SystemException if a system exception occurred
	*/
	public static com.mto.module.karaoke.model.Song[] findByRecordNumber_PrevAndNext(
		long songId, long recordNumber,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException,
			com.mto.module.karaoke.NoSuchSongException {
		return getPersistence()
				   .findByRecordNumber_PrevAndNext(songId, recordNumber,
			orderByComparator);
	}

	/**
	* Returns all the songs.
	*
	* @return the songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findAll()
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findAll();
	}

	/**
	* Returns a range of all the songs.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @return the range of songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findAll(
		int start, int end)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findAll(start, end);
	}

	/**
	* Returns an ordered range of all the songs.
	*
	* <p>
	* Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
	* </p>
	*
	* @param start the lower bound of the range of songs
	* @param end the upper bound of the range of songs (not inclusive)
	* @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
	* @return the ordered range of songs
	* @throws SystemException if a system exception occurred
	*/
	public static java.util.List<com.mto.module.karaoke.model.Song> findAll(
		int start, int end,
		com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().findAll(start, end, orderByComparator);
	}

	/**
	* Removes all the songs where songName = &#63; from the database.
	*
	* @param songName the song name
	* @throws SystemException if a system exception occurred
	*/
	public static void removeBySongName(java.lang.String songName)
		throws com.liferay.portal.kernel.exception.SystemException {
		getPersistence().removeBySongName(songName);
	}

	/**
	* Removes all the songs where songAuthor = &#63; from the database.
	*
	* @param songAuthor the song author
	* @throws SystemException if a system exception occurred
	*/
	public static void removeBySongAuthor(java.lang.String songAuthor)
		throws com.liferay.portal.kernel.exception.SystemException {
		getPersistence().removeBySongAuthor(songAuthor);
	}

	/**
	* Removes all the songs where songCategory = &#63; from the database.
	*
	* @param songCategory the song category
	* @throws SystemException if a system exception occurred
	*/
	public static void removeBySongCategory(int songCategory)
		throws com.liferay.portal.kernel.exception.SystemException {
		getPersistence().removeBySongCategory(songCategory);
	}

	/**
	* Removes all the songs where songSinger = &#63; from the database.
	*
	* @param songSinger the song singer
	* @throws SystemException if a system exception occurred
	*/
	public static void removeBySongSinger(java.lang.String songSinger)
		throws com.liferay.portal.kernel.exception.SystemException {
		getPersistence().removeBySongSinger(songSinger);
	}

	/**
	* Removes all the songs where recordNumber = &#63; from the database.
	*
	* @param recordNumber the record number
	* @throws SystemException if a system exception occurred
	*/
	public static void removeByRecordNumber(long recordNumber)
		throws com.liferay.portal.kernel.exception.SystemException {
		getPersistence().removeByRecordNumber(recordNumber);
	}

	/**
	* Removes all the songs from the database.
	*
	* @throws SystemException if a system exception occurred
	*/
	public static void removeAll()
		throws com.liferay.portal.kernel.exception.SystemException {
		getPersistence().removeAll();
	}

	/**
	* Returns the number of songs where songName = &#63;.
	*
	* @param songName the song name
	* @return the number of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static int countBySongName(java.lang.String songName)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().countBySongName(songName);
	}

	/**
	* Returns the number of songs where songAuthor = &#63;.
	*
	* @param songAuthor the song author
	* @return the number of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static int countBySongAuthor(java.lang.String songAuthor)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().countBySongAuthor(songAuthor);
	}

	/**
	* Returns the number of songs where songCategory = &#63;.
	*
	* @param songCategory the song category
	* @return the number of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static int countBySongCategory(int songCategory)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().countBySongCategory(songCategory);
	}

	/**
	* Returns the number of songs where songSinger = &#63;.
	*
	* @param songSinger the song singer
	* @return the number of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static int countBySongSinger(java.lang.String songSinger)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().countBySongSinger(songSinger);
	}

	/**
	* Returns the number of songs where recordNumber = &#63;.
	*
	* @param recordNumber the record number
	* @return the number of matching songs
	* @throws SystemException if a system exception occurred
	*/
	public static int countByRecordNumber(long recordNumber)
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().countByRecordNumber(recordNumber);
	}

	/**
	* Returns the number of songs.
	*
	* @return the number of songs
	* @throws SystemException if a system exception occurred
	*/
	public static int countAll()
		throws com.liferay.portal.kernel.exception.SystemException {
		return getPersistence().countAll();
	}

	public static SongPersistence getPersistence() {
		if (_persistence == null) {
			_persistence = (SongPersistence)PortletBeanLocatorUtil.locate(com.mto.module.karaoke.service.ClpSerializer.getServletContextName(),
					SongPersistence.class.getName());

			ReferenceRegistry.registerReference(SongUtil.class, "_persistence");
		}

		return _persistence;
	}

	/**
	 * @deprecated
	 */
	public void setPersistence(SongPersistence persistence) {
	}

	private static SongPersistence _persistence;
}